package main

import "fmt"

func main() {
	//管道可以声明为制度或者只写

	//1.在默认情况下，管道是双向
	//var chan1 chan int //可读可写


	//2.声明为只写
	var chan2 chan<- int //表示chan2为只写管道
	chan2 = make(chan int, 3)
	chan2 <- 20
	//num := <-chan2 //错误写法! 只写管道，不能从中读取数据

	fmt.Println("chan2=", chan2)

	//3.声明为只读
	var chan3 <-chan int //表示chan3为只读管道
	num2 := <-chan3
	//chan3<- 30 //错误写法! 只读管道，不能往里面写数据!
	fmt.Println(num2)

}
